class ARRAY3{T} < $ELT{T} |
---|
**** | Three-dimensional arrays of elements of type T. |
$ELT{_} | $ELT | AREF{_} |
attr size1:INT; |
---|
**** | Size of the slowest changing dimension. multiplication in accessing the array |
attr size2:INT; |
---|
**** | Size of the second fastest changing dimension. multiplication in accessing the array |
attr size3:INT; |
---|
**** | Size of the fastest changing dimension. multiplication in accessing the array |
aclear .. Included as aclear |
---|
**** | Set each element of self to nil. Built-in. |
aget(i1,i2,i3:INT):T |
---|
**** | The element with indices `[i1,i2,i3]'. |
array_ptr:C_PTR .. Included as array_ptr |
---|
aset(i1,i2,i3:INT,val:T) |
---|
**** | Set the element with indices `[i1,i2,i3]' to val. |
copy: SAME |
---|
**** | Return a new 3D array with the same set of values as self |
create(a: ARRAY{ARRAY{ARRAY{T}}}): SAME |
---|
create(d1,d2,d3:INT):SAME |
---|
**** | A new three-dimensional array with dimensions `d1 x d2 x d3' initialized to void. |
nc: INT |
---|
**** | The size of the second dimension of the array. Number of cols |
ne: INT |
---|
**** | The size of the third dimension of the array. Number of elements |
nr: INT |
---|
**** | The size of the first dimension of the array. Number of rows |
to_transpose_of(a1:SAME) |
---|
**** | Set self to the transpose of a1. |
transpose: SAME |
---|
**** | Return a new array containing the transpose of self |
col_elt!(once col,once elem:INT):T |
---|
**** | Yield elements by varying index 1 and holding index 2 at `col' and index 3 at `elem'. The elements of a "column" col
______loop_yield(aelt!(col,nr,nc));_end_end; |
col_ind!:INT |
---|
**** | Yield each value of the second index in order. The columns |
diag_elt!: T |
---|
**** | Yield values along the diagonal (square in smaller dimension) |
elem_elt!(once row,once col:INT):T |
---|
**** | Yield elements by varying index 3 and holding index 2 at `col' and index 1 at `row'. The elements of a "elements (third dimension)" elem |
elem_ind!:INT |
---|
**** | Yield each value of the third index in order. The elements |
elt!: T |
---|
**** | Yield all elements in row major order |
elt1!(once col,once elem:INT):T |
---|
**** | Yield elements by varying index 1 and holding index 2 at `col' and index 3 at `elem'. The elements of a "column" col
______loop_yield(aelt!(col,nr,nc));_end_end; |
elt2!(once row,once elem:INT):T |
---|
**** | Yield elements by varying index 2 and holding index 1 at `row' and index 3 at `elem'. The elements of a row "row"
______loop_yield(aelt!(row*nc,nc,1));_end_end; |
elt3!(once row,once col:INT):T |
---|
**** | Yield elements by varying index 3 and holding index 2 at `col' and index 1 at `row'. The elements of a "elements (third dimension)" elem |
ind1!: INT |
---|
**** | Yield each value of the first index in order. The rows |
ind2!:INT |
---|
**** | Yield each value of the second index in order. The columns |
ind3!:INT |
---|
**** | Yield each value of the third index in order. The elements |
inds!:TUP{INT,INT,INT} |
---|
**** | Yield tuples of the indices of self in lexicographical order. |
row_elt!(once row,once elem:INT):T |
---|
**** | Yield elements by varying index 2 and holding index 1 at `row' and index 3 at `elem'. The elements of a row "row"
______loop_yield(aelt!(row*nc,nc,1));_end_end; |
row_ind!: INT |
---|
**** | Yield each value of the first index in order. The rows |
set!(val:T) |
---|
**** | Set all elements in row major order |
set1!(once col,once elem:INT, val:T) |
---|
**** | Set to val elements with varying index 1 and index 2 fixed at `col' and index 3 fixed at `elem'. i.e. setting the column col
______loop_aset!(col,nr,nc,val);_yield_end_end; |
set2!(once row,once elem:INT, val:T) |
---|
**** | Set to val elements with varying index 2 and index 1 fixed at `row' and the index 3 fixed at `elem'. i.e. setting a row "row"
______loop_aset!(row*nc,nc,val);_yield_end_end; |
set3!(once row,once col:INT, val:T) |
---|
**** | Set to val elements with varying index 1 and index 2 fixed at `col' and index 3 fixed at `elem'. i.e. setting the column col
______loop_aset!(col,nr,nc,val);_yield_end_end; |
set_col!(once col,once elem:INT, val:T) |
---|
**** | Set to val elements with varying index 1 and index 2 fixed at `col' and index 3 fixed at `elem'. i.e. setting the column col
______loop_aset!(col,nr,nc,val);_yield_end_end; |
set_diag_elt!(val:T) |
---|
**** | Set values along the diagonal (square in smaller dimension) |
set_elem!(once row,once col:INT, val:T) |
---|
**** | Set to val elements with varying index 1 and index 2 fixed at `col' and index 3 fixed at `elem'. i.e. setting the column col
______loop_aset!(col,nr,nc,val);_yield_end_end; |
set_row!(once row,once elem:INT, val:T) |
---|
**** | Set to val elements with varying index 2 and index 1 fixed at `row' and the index 3 fixed at `elem'. i.e. setting a row "row"
______loop_aset!(row*nc,nc,val);_yield_end_end; |
acopy(src:SAME) .. Included as acopy |
---|
**** | Copy as many elements from `src' to self as will fit. Built-in. |
acopy(beg:INT, src:SAME) .. Included as acopy |
---|
**** | Copy as many elements from `src' to self as will fit when starting at index `beg' of self. |
acopy(beg,num:INT, src:SAME) .. Included as acopy |
---|
**** | Copy `num' elements from `src' to self starting at index `beg' of self. |
acopy(beg,num,srcbeg:INT, src:SAME) .. Included as acopy |
---|
**** | Copy `num' elements from `src' to self starting at index `beg' of self and index `srcbeg' of `src'. Built-in. |
aelt!(once beg:INT):T .. Included as aelt! |
---|
**** | Yield each element of self starting at `beg'. Built-in. |
aelt!(once beg,once num:INT):T .. Included as aelt! |
---|
**** | Yield `num' successive elements of self starting at index `beg'. Built-in. |
aelt!(once beg,once num,once step:INT):T .. Included as aelt! |
---|
**** | Yield `num' elements of self starting at `beg' and stepping by `step' which must not be zero. Built-in. |
aelt!:T .. Included as aelt! |
---|
**** | Yield each element of self in order. Built-in. |
aget(ind:INT):T .. Included as aget |
---|
**** | The element of self with index `ind'. Built-in. |
aind!:INT .. Included as aind! |
---|
**** | Yield the indices of self in order. |
aset!(val:T) .. Included as aset! |
---|
**** | Set successive elements of self to the values `val'. Built-in. |
aset!(once beg:INT,val:T) .. Included as aset! |
---|
**** | Set successive elements of self starting at `beg' to the values `val'. |
aset!(once beg,once num:INT,val:T) .. Included as aset! |
---|
**** | Set `num' successive elements of self starting at `beg' to the values `val'. |
aset!(once beg,once num,once step:INT, val:T) .. Included as aset! |
---|
**** | Set `num' elements of self starting at `beg' stepping by `step' to the values `val'. `step' must not be zero. |
aset(ind:INT, val:T) .. Included as aset |
---|
**** | Set the element of self with index `ind' to `val'. Built-in. |
asize:INT .. Included as asize |
---|
**** | The number of elements in self. Classes which inherit this may replace this by a constant to get constant sized objects (and the compiler may optimize certain operations in this case). Built-in. |
create(n:INT):SAME .. Included as create |
---|
**** | A new array with `n' elements. |
is_legal_aelts_arg( beg, num, step:INT) :BOOL .. Included as is_legal_aelts_arg |
---|
**** | True if the arguments are legal values for `aelts'. |
attr size1:INT; |
---|
**** | Size of the slowest changing dimension. multiplication in accessing the array |
attr size2:INT; |
---|
**** | Size of the second fastest changing dimension. multiplication in accessing the array |
attr size23:INT; |
---|
**** | size2*size3, pre-multiplied to spare a multiplication in accessing the array |
attr size23:INT; |
---|
**** | size2*size3, pre-multiplied to spare a multiplication in accessing the array |
attr size3:INT; |
---|
**** | Size of the fastest changing dimension. multiplication in accessing the array |